Saros: Eine Eclipse-Erweiterung zur verteilten Paarprogrammierung

نویسندگان

  • Riad Djemili
  • Christopher Oezbek
  • Stephan Salinger
چکیده

Die im folgenden vorgestellte Diplomarbeit legt den theoretischen Rahmen für die verteilte Paarprogrammierung als Weiterentwicklung der klassischen Paarprogrammierung und beschreibt die Implementierung eines entsprechenden EclipsePlugins. Ein besonderes Augenmerk lag darin sinnvolle und realistische Anforderungen zu erarbeiten. Die Daten der Literaturanalyse wurden dazu mittels einer eigenen Umfrage unter Entwicklern ergänzt. Die Arbeit wurde von Riad Djemili durchgeführt und von Christopher Oezbek und Stephan Salinger als Forschungsprojekt der Arbeitsgruppe Software-Engineering am Institut für Informatik der Freien Universität Berlin betreut. 1 Paarprogrammierung Paarprogrammierung (PP) bezeichnet eine Arbeitstechnik, bei der zwei Programmierer an einem Computer gemeinsame Artefakt (meist Code) bearbeiten [WKCJ00]. Man unterscheidet dabei zwei Rollen: Der Driver bearbeitet die Artefakte aktiv mit Maus und Tastatur, während der Observer die Eingaben kontrolliert und bei Entwurfsentscheidungen berät. Im Verlauf einer Sitzung kann die Rollenverteilung mehrmals wechseln. PP ist vor allem als Praktik des Extreme Programming (XP) bekannt geworden [Bec99]. Ziele von PP sind die Defektreduzierung, verbesserter Entwurf, Wissensaustausch und schnellere Produktentwicklung. Kritisiert wird jedoch häufig der Kostenaspekt und der Bedarf an räumlicher Nähe und geräumigen Arbeitsplätzen [Nos98]. Befürworter der PP betonen hingegen, dass die eventuell höheren Kosten vor allem durch die verbesserte Codequalität, mehr als kompensiert werden [WKCJ00]. 2 Verteilte Paarprogrammierung Bei der verteilten Paarprogrammierung (engl. distributed pair programming, DPP) findet die gleichzeitige und gemeinsame Bearbeitung des Artefakts von verschiedenen Arbeitsplätzen aus statt [SS01]. Diese allgemeine Definition ermöglicht unterschiedliche Umsetzungen in der Praxis: Müssen nur Textänderungen übertragen werden oder auch Dateioperationen? Ist die Übertragung von Gestiken und Gesichtsausdrücken per Video notwendig? Sollte der Observer sich vom Sichtbereich des Drivers lösen dürfen? Ein Vorteil von DPP ist die Unterstützung virtueller Teams, welche Software-Entwicklung bei räumlicher Trennung betreiben und in erster Linie mittels elektronischer Medien kommunizieren. In der Open-Source-Entwicklung stellen diese Teams den Normalfall dar. Während bei PP der Driver den Aufmerksamkeitsbereich des Paares bestimmt, identifizieren wir bei verteilter Paarprogrammierung drei Grade von Parallelität: Parallelität auf Programmebene: Der Observer kann das Fenster des DPP-Werkzeugs in den Hintergrund rücken, um mit anderen Programmen zu interagieren. Parallelität auf Sichtebene: Der Observer kann von dem Aufmerksamkeitsbereich des Drivers abweichen und eigenständig im gemeinsamen Projekt lesen. Parallelität auf Schreibebene: Es gibt mehr als einen Driver, das heißt mehrere Personen können gleichzeitig in dem Projekt schreiben. Dabei ist zu beachten, dass mit steigender Parallelität die ursprünglich postulierten Vorteile der PP, z.B. die aus der stetigen Durchsicht resultierende Qualitätsverbesserung, verloren gehen können. Insofern bleibt zu untersuchen, welcher Grad an Parallelität noch zu einer Effizienzund Qualitätssteigerung beitragen kann und ab wann diese kontraproduktiv wirkt. Eine weitere Kritik an DPP richtet sich gegen die eingeschränkten Möglichkeiten für den Observer die Aktivitäten des Drivers nachzuvollziehen (engl. awareness), z.B. anhand von Sprache und Gestik. 3 Technische Werkzeugansätze Der Forschungsbereich der Computer Supported Cooperative Work (CSCW) unterscheidet im Wesentlichen zwei Implementierungsansätze [Han05]. Beim Desktop Sharing wird die Ansicht einer Arbeitsfläche über ein Netzwerk auf den Schirm eines oder mehrerer anderer Systeme übertragen, häufig zum Zweck von Fernadministration oder Demonstrationen. Vorteilhaft an diesem Ansatz ist, dass Werkzeuge, die in der DPP-Sitzung verwendet werden, nicht speziell angepasst werden müssen. Der im Rahmen der Diplomarbeit favorisierter Ansatz ist die Collaboration Awareness, bei der die Mehrbenutzer-Unterstützung unmittelbar in das Werkzeug integriert wird. Von Vorteil ist hier, dass das Werkzeug durch das Verstehen des Kontextes unterstützende PP-Funktionalitäten anbieten kann (beispielsweise eine Historie der letzten Aktionen des Drivers) und zudem einen höheren Grad an Parallelität erlaubt. Zudem leidet dieser Ansatz nicht unter den technischen Restriktionen des Desktop Sharing: Es gibt keine Probleme mit abzustimmenden Auflösungen oder geringen Bildwiederholraten.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Erweiterung eines virtuellen Klassenzimmers zur Verbesserung der Zugänglichkeit für Blinde

Virtuelle Klassenzimmer ermöglichen die Durchführung von Veranstaltungen in Echtzeit an verteilten Standorten. Die Teilnahme von blinden Lernenden wird jedoch durch vielfältige Barrieren behindert. Dieser Beitragbeschreibt eine prototypische Erweiterung des virtuellen opensource Klassenzimmers BigBlueButton um ein Aktivitätsprotokoll, Konfigurationsmöglichkeiten, eine Notizund Beschreibungs-Fun...

متن کامل

Erweiterung von X für digitale Filme

In dieser Arbeit wird eine Erweiterung von X11 für die Bewegtbilddarstellung in einer verteilten Umgebung vorgestellt. Sie ermöglicht den benutzerkontrollierten Ablauf von Filmen in Fenstern, die von Xzur Verfügung gestellt werden. Nach einer Einführung in die Problematik der Bewegtbilddarstellung und -Übertragung wird die Erweiterung des X-Window-Systems detailliert beschrieben. Der Schwerpunk...

متن کامل

Vernetzung experimenteller Ressourcen in Forschung und Ausbildung für Nanotechnologien und Nanowissenschaft

Nanowissenschaftliche Forschung erfordert extrem komplexe und kostspielige Ausrüstung. Die Bereitstellung eines Zugangs zu diesen experimentellen Ressourcen für eine große Gemeinschaft geographisch verteilter Forscher ist daher eine wichtige Herausforderung zur Verbesserung des Wissenszuwachses in Nanowissenschaften und Nanotechnologien. Neue Methoden webbasierter Informationstechnologien ermög...

متن کامل

Filterbankstrukturen zur verlustfreien Kompression medizinischer Bilddaten

Zusammenfassung In der modernen medizinischen Diagnostik werden eine Vielzahl von bildgebenden Verfahren verwendet. Hierdurch fallen jahrlich radiologische Bilddaten in der Gro enordnung von mehreren Petabytes an. In Deutschland wird vom Gesetzgeber zur Archivierung nur eine verlustlose Kompression dieser Bilddaten erlaubt. Wir stellen zwei neue verlustlose Kompressionsverfahren vor. Beide Ve...

متن کامل

Erweiterung einer Geschäftsprozessmodellierungssprache zur Stärkung der strategischen Ausrichtung von Geschäftsprozessen

Die Ausrichtung der Geschäftsprozesse auf die Unternehmensstrategie ist eine zentrale Herausforderung des Geschäftsprozessmanagements. Der vorliegende Beitrag vergleicht drei Sprachen zur Geschäftsprozessmodellierung hinsichtlich Anforderungen an die adäquate Darstellung strategischer Informationen. Darauf aufbauend wird ein Vorschlag für die Erweiterung einer ausgewählten Sprache gegeben, um e...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2007